Skip to content

00-setup|工作流与 I/O

对应课程:lessons/00-setup/00-workflow-and-io.md

练习达到的比赛状态

  • 打开题 30 秒内写出骨架:solve() + 快速 I/O + 基础类型
  • 读题时先写:输入结构(单测/多测)、数据范围、输出格式
  • 每题提交前固定自检 15~60 秒(见 notes/ERROR-CHECKLIST.md

I/O 识别信号

  • 多测:第一行 t,或者题面明确 “multiple testcases”
  • 读到 EOF:题面说 “until EOF” 或输入没有 t
  • 混合输入:字符串 + 数字,注意空格与换行

I/O 最小套路(C++17)

  • 统一:
    • ios::sync_with_stdio(false); cin.tie(nullptr);
    • 计数/距离/前缀和默认 long long
    cpp
    using ll = long long;
  • 多测模板:
    • t
    • while (t--) solve();
  • 读到 EOF:
    • while (cin >> x) { ... }

赛中常见坑(高频)

  • 多测没清空:vectorclear(),数组没重置
  • 下标混乱:1-index/0-index 混用
  • 溢出:int 乘法、前缀和、最短路 dist
  • 输出格式:多/少空格,漏换行

15 秒提交前自检(建议写在脑子里)

  • [ ] 单测/多测搞对了吗?
  • [ ] long long 用对了吗?(和/距离/计数)
  • [ ] 边界:n=0/1、全相等、最大值
  • [ ] 输出格式严格一致

个人坑位

  • 常把 cin >> s 写成 getline 混用导致读空行